﻿using System.Xml.Serialization;
using LibraryGuard.Interfaces.Configuration;

namespace LibraryGuard.Configuration
{
	/// <summary>
	/// Tags guard configuration. See <see cref="LibraryGuard.Guards.TagsGuard"/>.
	/// </summary>
	public sealed class TagsGuard
		: IGuardConfiguration
	{
		#region IGuardConfiguration Members
		/// <inheritdoc />
		[XmlAttribute]
		public bool Enabled { get; set; }
		#endregion

		#region Specific
		/// <summary>
		/// Indicates whether to remove or not [*] from title.
		/// </summary>
		public bool Extra { get; set; }

		/// <summary>
		/// Indicates whether to remove or not 'bonus track'(etc.) string from title.
		/// </summary>
		public bool BonusTrack { get; set; }

		/// <summary>
		/// If set, whitespaces at the beggining and the end of each tag will be trimmed.
		/// </summary>
		public bool Trim { get; set; }

		/// <summary>
		/// If set, brakets('[]') will be changed to parenthesis('()').
		/// </summary>
		public bool Brackets { get; set; }
		#endregion
	}
}
